Cette partie du module interop, cherche en cas de mediawiki existant Ă le connecter avec communecter et de permettre via un bouton a crĂ©er des Ă©lĂ©ments du type de la page du wiki, ou en cas d’Ă©lĂ©ment prĂ©sent de fournir le lien, enfin mais nĂ©cessitant un rĂ©glage sur le wiki existant de marquer le wiki avec le liens de la page co.
Dans le sub-menu-left d’un Ă©lĂ©ment on clic sur @Mediawiki .
dans MediaWikiController.php beforeAction() instancie APIMediawiki (model de relations avec le wiki) qui est enfant de DB (model de relations avec la bdd)
beforeAction() du controller instancie APIMediawiki (model de relations avec le wiki) qui est enfant de DB (model de relations avec la bdd)
le controlleur rend une vue partiel sauf pour edit qui renvoi une string.
un formulaire s’ouvre lors de la premiĂ©re connection ou l’url du wiki et son nom dans communecter son rentrĂ© par l’utilisateur.
$this->renderPartial("interop.views.create.index");
a la validation du form direction actionChooseCat()
Si wiki deja connectĂ© renvoi vers l’index via:
$this->renderPartial("interop.views.default.indexMediaWiki");
Insére les données du formulaire (url et name) puis ouvre
$this->renderPartial("interop.views.create.chooseCat");
un formulaire prĂ©remplie par les donnĂ©es de l’api du wiki sur les catĂ©gories filtrer par regex afin de coler aux catĂ©gorie du futur menu soit (acteurs, ressource, projet) (les regex son en dur dans le code faire un tableau de comparaison afin d’ajouter ou enlever des mots de trie peu Ă©tre une bonne contribution en cas de contributeur volontaire ;o) a la validation du form direction actionInsertCat()
Insére les données du formulaire le wiki en db vaut désormais:
"_id" : ObjectId("idmongo"),
"name" : "name du wiki entré par l'user",
"parent" : {
"mongo id du parent" : {
"type" : "type parent",
"name" : "name parent"
}
},
"url" : "url entré par l'utilisateur + '/api.php",
"params" : {
"actors" : [
"categorie choisit par l'user",
...
],
"classifieds" : [
"categorie choisit par l'user",
...
],
"projects" : [
"categorie choisit par l'user",
...
]
},
"logo" : ""
}
renvoi vers la vue index
return $this->renderPartial("interop.views.default.indexMediaWiki");
Vas chercher les données pour le menuleft des pages du wiki en fonction du button-catégorie(acteurs,ressources,projet) clicker ou du texte de la search bar.
puis les rend dans la vue return $this->renderPartial("interop.views.menus.pages");
Vas chercher les données pour la page du wiki en fonction du nom de la page.
puis les rend dans la vue return $this->renderPartial("interop.views.page.index");
Ici via le modĂ©le ApiMediawiki.php on marque la page du wiki avec un lien communecter (!! une propriĂ©tĂ©es est a crĂ©er sur le wiki distant |pageCo= voir avec l’administrateur du wiki.)
renvoie une string message sur le status de l’edition.
renvoi vers cette page
Dans A propos il ya trois boutons qui font les liens: Un bouton Page du Wiki qui redirige vers la page source du wiki. Un bouton Site web qui redirige vers le site de l’Ă©lement du wiki.
Le dernier bouton peu avoir deux valeurs : CrĂ©er dans communecter qui ouvre un formulaire prĂ©remplie et Ă©ditable afin de crĂ©er un Ă©lĂ©ment communecter. Page Communecter qui redirige vers la page communecter en relation avec l’Ă©lĂ©ment du wiki.